var express = require('express');
var router = express.Router();

const path = require('path');
const fs = require('fs');
const svg = require('svg-captcha');
const cookieSession = require('cookie-session');

let dir = path.join(__dirname, '../persons.json');
let data = fs.readFileSync(dir, 'utf-8');
data = JSON.parse(data);

// 渲染页面
router.get('/yzm', (req, res) => {
  // // 创建验证码
  let captcha = svg.create({
    size: 4,//验证码的长度
    ignoreChars: "10oIl",//设置要忽略的字符
    noise: 5,//干扰线条数
    color: true,//文字颜色 只有true 和false
    background: '#ff0'//背景色
  });
  // 设置mime 类型为svg
  res.type('svg');

  // 获取验证码内容
  req.session.yz = captcha.text;
  // console.log(req.session.yz);

  // 把svg图响应出去 显示出来
  res.send(captcha.data);
})
// let da = path.join(__dirname, 'public/images')
router.get('/register', (req, res, next) => {
  res.render('register');
})


//post提交
router.post('/register', (req, res, next) => {
  // 获取验证码参数信息
  console.log(req.session.yz);
  let haha = req.session.yz;
  console.log(haha);

  // 获取参数
  let { tel, pass, pass2, pass3 } = req.body;
  // console.log(pass3);

  //输入框不能为空
  if (!tel || !pass || !pass2 || !pass3) {
    next('输入框不能为空');
    return;
  };

  // 判断两次的密码是否一致
  if (pass != pass2) {
    next('两次输入内容不一致');
    return;
  }
  // 判断验证码输入是否正确
  console.log(haha);
  if (pass3 != haha) {
    next('验证码输入错误');
    return;
  }
  // 判断用户名是否存在
  let isregister = data.find(value => value.username == tel);

  // 判断
  if (isregister) {
    next('用户名已存在');
    return;
  }
  //else {
  // 添加 转成对应格式
  data.push({ username: tel, password: pass });
  // 写入
  fs.writeFileSync(dir, JSON.stringify(data))
  // 响应
  res.render('err',{msg:'注册成功'})

  // }

})


module.exports = router;
